package com.cn.wanxi.dao;

import com.cn.wanxi.model.NavModel;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class NavDao {
    /**
     * java 里面数组意思？
     * 定义方式？
     * 1 静态定义  2动态定义
     * 单例模式   整个项目 都只能有一个实例  恶汉模式 懒汉模式  双检锁模式
     */
    public String[] hrefs = {"/home", "/company", "/", "/", "/", "/"};//不需要加数组的长度，
    public String[] titles = new String[6];//必须加长度,里面是没有值的，默认值为null
    public List<String> hrefsList = new ArrayList<>();

    //在其他类调用当前对象时，想执行里面的某个方法。
//    我们需要在调用对象时，直接去执行方法
//    两种情况
//    1 构造方法
//    2 代码块
//    一个对象由哪些组成？
//    属性  方法   构造方法   代码块
//        Iterator<NavModel>
//        List<NavModel> 他们之间的区别？
    {
        setTitles();
        hrefsList.add("/home");
        hrefsList.add("/home");
        hrefsList.add("/home");
        hrefsList.add("/home");
        hrefsList.add("/home");
        hrefsList.add("/home");
    }
//集合

    //    赋值：动作set
    public void setTitles() {

        titles[0] = "网站首页";
        titles[1] = "公司首页";
        titles[2] = "新闻介绍";
        titles[3] = "产品介绍";
        titles[4] = "在线留言";
        titles[5] = "联系我们";
    }

    //权限修饰符  特征修饰符 返回值类型  方法名称  （参数） 异常 ｛代码块｝ 返回值
//构造方法和代码块 : 先执行哪个？
//    类方法的执行顺序？
//    public NavDao() {
//        System.out.println("NavDao");
//    }
//
//    {
//        System.out.println("代码块");
//    }
//
//    static void navDao() {
//        System.out.println("staticNavDao");
//    }
//
//    static {
//        System.out.println("static代码块");
//    }

}
